The process of deployment from scratch for certain solutions (such as a service oriented architecture (SOA) based solution or a multi-tiered architecture solution) is time-consuming and labor intensive. These certain solutions may be referred to as multi-component solutions and/or composite solutions, since, on the one hand, such solutions may be deployed on more than one machine (distributed solutions), but on the other hand, in some instances, the same solution may be deployed even on a single machine.
Deployment is facilitated by using a deployment document or scripts, which are typically created by humans and usually out of synch with respect to the actual configuration of software stacks. These documents are prone to errors and result in enormous time being spent in resolving configuration parameters required by the application.
Currently, deployment of composite solutions is time and labor consuming. In particular, current techniques are document based; primarily manual, with unstructured use of scripts for automation. Furthermore, current approaches may be impractical, inasmuch as the inherent complexity of the solution, along with lack of complete knowledge and understanding in one person, further complicate the process of deployment; that is to say, impracticality may arise, for example, from incomplete documentation and/or incomplete skills. Typical deployment (installation+configuration) times may run, for example, 3-4 weeks.
In a first known method, typically, every time the solution is required, the deployment of the solution is started from scratch. This process is time consuming and labor intensive. In a second known method, image capture and restore technologies, including virtualization, can be used to facilitate automatic movement of the software stack or stacks, but current approaches do not offer the facility of automatic reconfiguration of the solution to adapt to the needs of the new environment. The variations in the new environment may range from changing the configurations, such as IP addresses, network masks, and the like, to changes in topology of the solution.